package part10;

/**
 * @author wcj
 * @Date 2021/5/19 18:37
 * @Version 1.0
 */
public class Part110 {

    static void taskD(D d) {
    }

    static void taskE(E e) {
    }

    public static void main(String[] args) {
        Z z = new Z();
        taskD(z);
        taskE(z.makeE());
    }
}

class D {
}

abstract class E {
}

/**
 * 接口拥有多继承的概念，但是Java中的类只有单继承，然后有时候需要我们使用多继承
 * 如果都是要以实现接口的方式，那么自然就可以通过implements实现了
 * 但是如果特定情况下，像我们一个类需要继承多个类的时候，那么这个时候内部类就很好的帮助我们完成了多继承
 */
class Z extends D {
    E makeE() {
        return new E() {
        };
    }
}
